Перейти к основному содержимому

17.17 Настройка MLAG

17.17.1 Введение

В сетевой топологии дата-центров с высокой доступностью, как правило, TOR-коммутатор или сервер подключается к двум агрегирующим коммутаторам для обеспечения защиты от отказов и балансировки нагрузки.

В такой ситуации протокол Spanning Tree Protocol (STP) предотвращает петли кадров, блокируя часть портов на агрегирующих коммутаторах; однако это уменьшает использование полосы пропускания сети.

Протокол MSTP позволяет в определённой степени повысить эффективность использования полосы пропускания, но при этом увеличивает сложность сети и затрудняет эксплуатацию и устранение проблем.

Применение MLAG (Multi-Chassis Link Aggregation, агрегация каналов на нескольких шасси) позволяет решить эту проблему. MLAG — это технология виртуализации, которая представляет два различных коммутатора как единый узел для установления агрегированного канала с одним и тем же терминалом или устройством.

Между двумя коммутаторами создаётся peer-link, который соединяет их и позволяет выглядеть как одно логическое устройство.

Порты на этих двух устройствах образуют агрегированные порты, благодаря чему все они могут участвовать в пересылке трафика.

Таким образом, MLAG обеспечивает надёжность не только на уровне каналов, но и на уровне устройств, формируя систему Active-Active.

Предпосылки

По сравнению со стековой технологией, устройства MLAG всё ещё требуют отдельного управления, однако MLAG проще и несёт меньший риск возникновения ситуации «split-brain».

Передача известного unicast-трафика выполняется через локальный агрегированный порт, а не через MLAG-партнёра, чтобы уменьшить объём трафика через peer-link, предотвратить перегрузку соединения и снизить сетевые задержки.

MLAG обеспечивает следующие технические преимущества:

  • Предоставляет каналы с большей полосой пропускания и надёжностью по мере увеличения сетевого трафика.
  • Обеспечивает топологию уровня 2 для поддержки резервирования без петель. При этом нет необходимости настраивать STP, что упрощает сеть и её конфигурацию.
  • Поддерживает статическую агрегацию каналов (LAG) или LACP для подключения к другим коммутаторам или серверам вместо использования других протоколов.
  • Поддерживает активное-активное резервирование на уровне L2.
  • Позволяет обновлять устройства по отдельности — любое устройство способно поддерживать нормальную работу сервисов.

17.17.2 Описание принципа работы

Базовый принцип

Терминология

Рисунок 17-42: MLAG

Рисунок 17-42: Эскиз топологии MLAG

На рисунке выше показана сеть с использованием MLAG. В данной схеме домен MLAG содержит два коммутатора; устройство, подключенное к ним, может быть сервером, коммутатором или другим доменом MLAG. У коммутатора 1 и коммутатора 2 есть по два порта, которые входят в разные группы MLAG. Соответствующие термины приведены ниже:

  • MLAG (Multi-Chassis Link Aggregation) — агрегация каналов на нескольких шасси; два устройства формируют MLAG, называемые MLAG-партнёрами (MLAG Peer).
  • Группа MLAG (MLAG group) — интерфейсы, входящие в одну и ту же группу MLAG, будут восприниматься внешним устройством как единый агрегированный порт.
  • Orphan Port — интерфейсы на устройствах MLAG, которые не входят в группу MLAG.
  • Peer-link — соединение, используемое для взаимодействия между двумя устройствами, образующими MLAG. Если порт с одной стороны группы MLAG выходит из строя, трафик передаётся по peer-link и обрабатывается MLAG-партнёром.
  • Peer-address — адрес, используемый MLAG-партнёрами для обмена протоколом MLAG.
  • Reload-delay — после перезагрузки устройства непортовые интерфейсы peer-link переходят в состояние errdisable на определённое время для предотвращения петель в сети до установления соседства MLAG. По истечении таймера эти порты автоматически переводятся в состояние admin up. (Таймер является настраиваемым).
  • System ID — по умолчанию соответствует MAC-адресу маршрутизатора (Route-MAC) устройства. Используется для выбора главной (master) и подчинённой (slave) роли в MLAG. (Отличается от system-id протокола LACP).
  • DAD (Dual-active detection) – соединение используется для периодической передачи пакетов DAD, которые определяют, действуют ли оба устройства в группе M-LAG как ведущие. В случае сбоя Peer-link два устройства-участника M-LAG не отправляют друг другу пакеты протокола и пакеты синхронизации; вместо этого они оба функционируют как ведущие устройства M-LAG (ситуация Split Brain). В этом случае некоторые интерфейсы на подчиненном коммутаторе (Slave) M-LAG переходят в состояние Err-disabled, предотвращая данную ситуацию. Пакеты DAD представляют собой пакеты UDP, которые отправляются ведущим и резервным устройствами M-LAG друг другу, при этом оба устройства по умолчанию ожидают получения ответных пакетов.

Принцип пересылки (Обычная пересылка)

Рисунок 17-43: MLAG

Рисунок 17-43: Схема пересылки трафика в MLAG

Как показано на рисунке выше, процесс установления MLAG и принцип пересылки работают следующим образом:

  • Коммутатор 1 и Коммутатор 2 создают TCP-соединение по адресу peer-address, обмениваются MLAG-сообщениями протокола и устанавливают соседство MLAG.
  • Выполняется выбор ролей Master/Slave путём сравнения значений System ID, которые передаются в MLAG-сообщениях протокола; по умолчанию в качестве Master выбирается устройство с большим System ID. В дальнейшем MLAG использует System ID Master как LACP System MAC для всей системы.
  • После установления соседства устройства обмениваются keepalive-сообщениями и активируют механизм контроля времени. Если в течение заданного времени не поступают keepalive-сообщения, устройство считает, что MLAG-сосед недоступен, и возвращается в режим работы как одиночное устройство.
  • Соответствующие агрегированные порты двух устройств объединяются в одну группу MLAG.
  • Когда агрегированный порт в группе MLAG обучается некоторым MAC-адресам, устройство синхронизирует эти MAC-адреса с партнёром по MLAG, чтобы таблицы MAC-адресов на обоих устройствах оставались синхронизированными.
  • Для известного unicast-трафика пересылка выполняется на основе локальной MAC-таблицы, так как обе стороны поддерживают собственные таблицы MAC-адресов. На схеме зелёными линиями показан трафик, входящий в Коммутатор 1, который выполняет поиск по своей MAC-таблице и пересылку; трафик, входящий в Коммутатор 2, на рисунке не показан, но он обрабатывается по тому же принципу.
  • Для неизвестного unicast-трафика или broadcast-трафика требуется широковещательная рассылка. Как показано синей линией, трафик проходит через peer-link для распространения на MLAG-партнёра. Согласно протоколу MLAG, Коммутатор 2 «видит», что у Коммутатора 1 оба участника группы MLAG 1 и 2 находятся в состоянии UP. Поэтому Коммутатор 2 отбрасывает эту часть трафика, чтобы предотвратить зацикливание и дублирование потоков.

Защита при отказе канала (отказ интерфейса MLAG)

Рисунок 17-44: MLAG

Рисунок 17-44: Переключение защиты для unicast-сообщений в MLAG

Как показано выше, когда интерфейс MLAG 1 на Коммутаторе 1 выходит из строя, для обеспечения пересылки unicast-трафика система выполняет следующие действия:

  • Когда все порты внутри одной группы MLAG на Коммутаторе 1 теряют работоспособность, выполняется обновление MAC-таблицы, в результате чего трафик направляется через peer-link.
  • Трафик поступает на Коммутатор 2 через peer-link, после чего выполняется поиск в MAC-таблице, и пересылка осуществляется из соответствующей группы MLAG на Коммутаторе 2.
  • Когда порт MLAG, потерявший работоспособность на Коммутаторе 1, восстанавливается, система выполняет переключение обратно на Коммутатор 1.
  • Такое переключение влияет только на трафик через отказавший интерфейс и не затрагивает остальной трафик; на схеме показано, что это касается только трафика, направленного к MLAG 1 на Коммутаторе 1. Трафик к MLAG 2 продолжает пересылаться в обычном режиме.

Рисунок 17-45: MLAG

Рисунок 17-45: Защита MLAG при пересылке широковещательного трафика

При пересылке широковещательного (flood) трафика система выполняет следующие действия:

  • Когда Коммутатор 1 обнаруживает, что локальный интерфейс MLAG 1 вышел из строя, он уведомляет Коммутатор 2 через протокол MLAG. После получения сообщения от Коммутатора 1, Коммутатор 2 перестаёт отбрасывать трафик, направленный на MLAG 1.
  • Когда интерфейс MLAG восстанавливается после отказа, Коммутатор 1 снова уведомляет Коммутатор 2 с помощью протокола MLAG, и Коммутатор 2 вновь начинает отбрасывать трафик, направленный на MLAG 1.

Рисунок 17-46: MLAG

Рисунок 17-46: Защита при отказе peer-link

Если Устройство 1 и Устройство 2 используют агрегирование каналов по LACP с MLAG-устройствами, то при отказе peer-link и разделении MLAG, коммутаторы продолжают взаимодействие через DAD link.

В результате интерфейсы на подчиненном коммутаторе (Slave) M-LAG переходят в состояние Err-disabled, что предотвращает ситуацию Split Brain, и трафик пересылается только через главной (master) коммутатор.

Дополнительные функции

LACP с MLAG

Для реализации LACP с MLAG выполняются следующие условия:

  • Сообщения LACP, отправляемые двумя MLAG-устройствами на MLAG-интерфейсе, имеют одинаковые Actor System Priority и Actor System ID.
  • Сообщения LACP, отправляемые двумя MLAG-устройствами на MLAG-интерфейсе, имеют одинаковый Actor Key.

MLAG-устройства используют один и тот же LACP System ID, совпадающий с System ID ведущего устройства (Master). (LACP System ID включает System Priority и System MAC). Master должен синхронизировать этот идентификатор с подчинённым устройством (Slave).

После установления MLAG подчинённое устройство должно использовать LACP System MAC, заданный Master. Если Master выходит из строя или перезагружается, сессия MLAG обрывается, и подчинённое устройство переключается на собственный LACP System MAC. Это приводит к повторным переговорам по протоколу LACP: агрегированный канал переходит в состояние down, а затем up после успешных переговоров.

Для повышения надёжности в такой ситуации устройство поддерживает команду конфигурации MLAG LACP System MAC. После её настройки все MLAG-интерфейсы используют единый LACP System MAC.

LACP System ID — это понятие протокола LACP, используемое для идентификации устройства в LACP. Рекомендуется использовать именно режим агрегации LACP, чтобы избежать односторонней связи. Статическая агрегация применяется только в случае, если удалённое устройство не поддерживает LACP.

ISSU с MLAG

Для реализации ISSU (In-Service Software Upgrade) в MLAG-устройствах используется механизм Error-disable. После перезапуска устройства по завершении обновления, локальные порты с настроенным MLAG временно переводятся в состояние Error-disable.

В течение этого периода MLAG выполняет повторное согласование, синхронизацию таблиц и перерасчёт STP. По истечении таймера порты возвращаются в нормальный режим работы.

Этот период задаётся командой reload-delay; значение по умолчанию — 300 секунд.

Порт в состоянии errdisable эквивалентен порту в состоянии down и не участвует в пересылке. Его можно восстановить вручную командой no shutdown, а командой show errdisable recovery проверить состояние восстановления.

VARP с MLAG

Система поддерживает глобальную настройку virtual mac и virtual ip, чтобы предоставлять удалённому устройству (подключённому к MLAG) единые сетевые адреса — IP-адрес и MAC-адрес.

Независимо от того, какое устройство получило пакеты, адресованные virtual ip или virtual mac, оно сможет корректно их обработать.

Virtual IP может находиться в той же подсети, что и IP интерфейса, либо в другой. Каждый интерфейс поддерживает до 15 virtual IP.

Один коммутатор может поддерживать только один Virtual MAC.

Virtual MAC должен быть задан таким образом, чтобы он отсутствовал среди локальных MAC-адресов устройства. Он не может совпадать с Route-MAC устройства или MAC-адресом интерфейса.

Ограничения и меры предосторожности

  • Два коммутатора, объединяемые в MLAG, должны быть оборудованием нашей компании; комбинировать их с коммутаторами других производителей для создания MLAG нельзя.
  • Peer-address поддерживает только адреса из одной подсети.
  • Порты в состоянии errdisable аналогичны портам в состоянии shutdown: они не пересылают трафик. Они автоматически восстанавливаются по истечении таймера, если причиной является reload-delay. Администратор может также проверить их состояние командой show errdisable recovery и восстановить вручную с помощью shutdown/no shutdown.
  • MLAG не поддерживает синхронизацию записей в таблице мультикастов. Мультикаст-трафик в среде MLAG будет пересылаться по принципу flood. Использование MLAG в мультикаст-сценариях не рекомендуется. Рекомендуется отключить функцию IGMP Snooping на MLAG-устройствах (по умолчанию IGMP Snooping включён).
  • При включении STP на MLAG-устройствах необходимо использовать e-STP.

17.17.3 Конфигурация

Настройка MLAG

Рисунок 17-47: MLAG

Рисунок 17-47: MLAG

Конфигурации для коммутаторов Switch1 и Switch2 приведены ниже.

Конфигурации для этих двух коммутаторов одинаковы, если не указано иное.

Шаг 1: Войдите в режим конфигурации

Switch# configure terminal

Шаг 2: Войдите в режим настройки VLAN и создайте VLAN

Switch(config)# vlan database
Switch(config-vlan)# vlan 10,4094
Switch(config-vlan)# exit

Шаг 3: Создайте статический агрегированный канал (agg)

Switch(config)# interface eth-0-1
Switch(config-if)# static-channel-group 1
Switch(config-if)# no shutdown
Switch(config-if)# exit

Позже интерфейс eth-0-9 будет настроен в качестве интерфейса peer link.

Switch(config)# interface eth-0-9
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan all
Switch(config-if)# spanning-tree port disable
Switch(config-if)# no shutdown
Switch(config-if)# exit

Шаг 5: Привяжите интерфейс agg к MLAG

Switch(config)# interface agg1
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 10
Switch(config-if)# mlag 1
Switch(config-if)# exit

Шаг 6: Установите атрибуты интерфейса VLAN

Switch 1:

Switch(config)# interface vlan4094
Switch(config-if)# ip address 12.1.1.1/24
Switch(config-if)# exit

Switch 2:

Switch(config)# interface vlan4094
Switch(config-if)# ip address 12.1.1.2/24
Switch(config-if)# exit

Шаг 7: Войдите в режим настройки MLAG и задайте атрибуты MLAG

Switch 1:

Switch(config)# mlag configuration
Switch(config-mlag)# peer-link eth-0-9
Switch(config-mlag)# peer-address 12.1.1.2
Switch(config-mlag)# exit

Switch 2:

Switch(config)# mlag configuration
Switch(config-mlag)# peer-link eth-0-9
Switch(config-mlag)# peer-address 12.1.1.1
Switch(config-mlag)# end

Шаг 8: Проверка

Используйте следующую команду для отображения информации о MLAG на Switch1.

Switch# show mlag 
MLAG configuration:
-----------------
role : Master
local_sysid : ea90.aecc.cc00
mlag_sysid : ea90.aecc.cc00
peer-link : eth-0-9
peer conf : Yes

Switch# show mlag interface
mlagid local-if local-state remote-state
1 agg1 up up

Switch# show mlag peer
MLAG neighbor is 12.1.1.2, MLAG version 1
MLAG state = Established, up for 00:13:07
Last read 00:00:48, hold time is 240, keepalive interval is 60 seconds
Received 17 messages,Sent 19 messages
Open : received 1, sent 2
KAlive : received 15, sent 16
Fdb sync : received 0, sent 0
Failover : received 0, sent 0
Conf : received 1, sent 1

Connections established 1; dropped 0
Local host: 12.1.1.1, Local port: 61000
Foreign host: 12.1.1.2, Foreign port: 46157
remote_sysid: baa7.8606.8b00



Switch# show mac address-table
Mac Address Table
-------------------------------------------
(*) - Security Entry
Vlan Mac Address Type Ports
---- ----------- -------- -----

Используйте следующую команду для отображения информации о таблице MAC-адресов на Switch1.

Switch# show mlag 
MLAG configuration:
-----------------
role : Slave
local_sysid : baa7.8606.8b00
mlag_sysid : ea90.aecc.cc00
peer-link : eth-0-9
peer conf : Yes

Switch# show mlag interface
mlagid local-if local-state remote-state
1 agg1 up up

Switch# show mlag peer
MLAG neighbor is 12.1.1.1, MLAG version 1
MLAG state = Established, up for 00:14:29
Last read 00:00:48, hold time is 240, keepalive interval is 60 seconds
Received 19 messages,Sent 19 messages
Open : received 1, sent 1
KAlive : received 17, sent 17
Fdb sync : received 0, sent 0
Failover : received 0, sent 0
Conf : received 1, sent 1

Connections established 1; dropped 0
Local host: 12.1.1.2, Local port: 46157
Foreign host: 12.1.1.1, Foreign port: 61000
remote_sysid: ea90.aecc.cc00

Используйте следующую команду для отображения информации о MLAG на Switch2.

Switch# show mac address-table 
Mac Address Table
-------------------------------------------
(*) - Security Entry
Vlan Mac Address Type Ports
---- ----------- -------- -----

17.17.4 Защита маршрутизации второго уровня

Топология

Рисунок 17-48: MLAG

Рисунок 17-48: MLAG

Требование

Host 1 и Host 2 находятся в одной подсети. Их сдвоенные сетевые карты (NIC) работают в режиме active-active и подключаются к устройствам с MLAG. Требуется сеть без петель, при этом Host 1 и Host 2 должны обмениваться данными на уровне 2. MLAG1 использует динамическую агрегацию каналов, а MLAG2 — статическую.

Шаги настройки

Примечание

В приведённом примере используется channel-group 55 для межсвитчевого соединения. При необходимости номер группы можно изменить — это не повлияет на конфигурацию.

Шаг 1: Настройка MLAG PEER Interconnect Ports

Выберите минимум два 10G-порта (если сервисные порты — 10G) для соединения между устройствами.

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1 (config)# interface range eth-0-9 – 10
Switch_1 (config-if-range)# no shutdown
Switch_1 (config-if-range)# lacp timeout short
Switch_1 (config-if-range)# channel-group 55 mode active
Switch_1 (config-if-range)# exit
Switch_1 (config)# interface agg 55
Switch_1 (config-if)# spanning-tree port disable
Switch_1 (config-if)# switchport mode trunk
Switch_1 (config-if)# switchport trunk allowed vlan all
Switch_1 (config-if)#end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface range eth-0-9 – 10
Switch_2 (config-if-range)# no shutdown
Switch_2 (config-if-range)# lacp timeout short
Switch_2(config-if-range)# channel-group 55 mode active
Switch_2(config-if-range)# exit
Switch_2(config)# interface agg 55
Switch_2(config-if)# spanning-tree port disable
Switch_2(config-if)# switchport mode trunk
Switch_2(config-if)# switchport trunk allowed vlan all
Switch_2(config-if)#end

Шаг 2: Настройка MLAG PEER Communication Address

VLAN 4094 используется только для связи peer-link. Не добавляйте в него сервисные порты.

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 4094
Switch_1(config-vlan)# exit
Switch_1(config)# interface vlan 4094
Switch_1(config-if)# ip address 10.10.0.1/30
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 4094
Switch_2(config-vlan)# exit
Switch_2(config)# interface vlan 4094
Switch_2(config-if)# ip address 10.10.0.2/30
Switch_2(config-if)# end

Шаг 3: Настройка MLAG PEER

Switch 1

Switch_1# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# mlag configuration
Switch_1(config-mlag)# timers mlag 1 5
Switch_1(config-mlag)# peer-link agg55
Switch_1(config-mlag)# peer-address 10.10.0.2
Switch_1(config-mlag)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# mlag configuration
Switch_2(config-mlag)# timers mlag 1 5
Switch_2(config-mlag)# peer-link agg 55
Switch_2(config-mlag)# peer-address 10.10.0.1
Switch_2(config-mlag)# end

Шаг 4: Настройка MLAG Port

Примечание

lacp mlag system-id HHHH.HHHH.HHHH — это произвольно заданный system-id. Для MLAG он должен быть одинаковым у обоих устройств. Для двух пар MLAG в каскаде ID должен быть уникален.

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# no ip igmp snooping
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 10
Switch_1(config-vlan)# exit
Switch_1(config)# lacp mlag system-id 0000.0000.aaaa
Switch_1(config)# interface eth-0-1
Switch_1(config-if)# no shutdown
Switch_1(config-if)# switchport access vlan 10
Switch_1(config-if)# channel-group 1 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface eth-0-2
Switch_1(config-if)# no shutdown
Switch_1(config-if)# switchport access vlan 10
Switch_1(config-if)# static-channel-group 2
Switch_1(config-if)# exit
Switch_1(config)# interface agg 1
Switch_1(config-if)# mlag 1
Switch_1(config-if)# exit
Switch_1(config)# interface agg 2
Switch_1(config-if)# mlag 2
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# no ip igmp snooping
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 10
Switch_2(config-vlan)# exit
Switch_2(config)# lacp mlag system-id 0000.0000.aaaa
Switch_2(config)# interface eth-0-1
Switch_2(config-if)# no shutdown
Switch_2(config-if)# switchport access vlan 10
Switch_2(config-if)# channel-group 1 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface eth-0-2
Switch_2(config-if)# no shutdown
Switch_2(config-if)# switchport access vlan 10
Switch_2(config-if)# static-channel-group 2
Switch_2(config-if)# exit
Switch_2(config)# interface agg 1
Switch_2(config-if)# mlag 1
Switch_2(config-if)# exit
Switch_2(config)# interface agg 2
Switch_2(config-if)# mlag 2
Switch_2(config-if)# end

Шаг 5: Проверка конфигурации

Проверка статуса MLAG PEER

Switch_1# show mlag peer 
MLAG neighbor is 10.10.0.2, MLAG version 1
MLAG state = Established, up for 00:00:01
Last read 00:00:01, hold time is 240, keepalive interval is 60 seconds
Received 4 messages,Sent 4 messages
Open : received 1, sent 1
KAlive : received 1, sent 1
Fdb sync : received 0, sent 0
Failover : received 0, sent 0
Conf : received 0, sent 0
Syspri : received 1, sent 1
Peer fdb : received 1, sent 1

Connections established 1; dropped 0
Local host: 10.10.0.1, Local port: 50040
Foreign host: 10.10.0.2, Foreign port: 61000
remote_sysid: 1a53.71e9.c000

Проверка роли MLAG

Switch_1# show mlag 
MLAG configuration:
-----------------
role : Master
local_sysid : 8e79.b120.2e00
remote_sysid : 1a53.71e9.c000
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Switch_2# show mlag
MLAG configuration:
-----------------
role : Slave
local_sysid : 1a53.71e9.c000
remote_sysid : 8e79.b120.2e00
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Проверка статуса интерфейсов MLAG

Switch_1# show mlag interface
mlagid local-if local-state remote-state
1 agg1 up up
2 agg2 up up
Примечание

При добавлении нового VLAN для расширения сервиса, после настройки VLAN на обоих устройствах выполните команду clear mac address-table dynamic vlan X на обоих устройствах для очистки MAC-таблицы. В версиях ПО после V7.4.2 это происходит автоматически.

17.17.5 MLAG в качестве L3 шлюза (один IP на VLAN)

Топология

Рисунок 17-49: MLAG в качестве L3 шлюза (один IP на VLAN)

Рисунок 17-49: MLAG в качестве L3 шлюза (один IP на VLAN)

Требование

Host 1 и Host 2 используют сдвоенные сетевые карты (NIC) в режиме active-active и подключаются к устройству с MLAG. Устройства находятся в разных подсетях, а их шлюзом служит MLAG-устройство. Не используется VRRP, но требуется активный шлюз с высокой доступностью (active-active).

Шаги настройки

Примечание

В конфигурации используется channel-group 55 для соединения двух коммутаторов. Номер группы можно изменить без влияния на общую конфигурацию.

Шаг 1: Настройка MLAG PEER Interconnect Ports

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1 (config)# interface range eth-0-9 – 10
Switch_1 (config-if-range)# no shutdown
Switch_1 (config-if-range)# lacp timeout short
Switch_1 (config-if-range)# channel-group 55 mode active
Switch_1 (config-if-range)# exit
Switch_1 (config)# interface agg 55
Switch_1 (config-if)# spanning-tree port disable
Switch_1 (config-if)# switchport mode trunk
Switch_1 (config-if)# switchport trunk allowed vlan all
Switch_1 (config-if)#end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface range eth-0-9 – 10
Switch_2 (config-if-range)# no shutdown
Switch_2 (config-if-range)# lacp timeout short
Switch_2(config-if-range)# channel-group 55 mode active
Switch_2(config-if-range)# exit
Switch_2(config)# interface agg 55
Switch_2(config-if)# spanning-tree port disable
Switch_2(config-if)# switchport mode trunk
Switch_2(config-if)# switchport trunk allowed vlan all
Switch_2(config-if)#end

Шаг 2: Настройка MLAG PEER Communication Address

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 4094
Switch_1(config-vlan)# exit
Switch_1(config)# interface vlan 4094
Switch_1(config-if)# ip address 10.10.0.1/30
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 4094
Switch_2(config-vlan)# exit
Switch_2(config)# interface vlan 4094
Switch_2(config-if)# ip address 10.10.0.2/30
Switch_2(config-if)# end

Шаг 3: Настройка MLAG PEER

Switch 1

Switch_1# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# mlag configuration
Switch_1(config-mlag)# timers mlag 1 5
Switch_1(config-mlag)# peer-link agg55
Switch_1(config-mlag)# peer-address 10.10.0.2
Switch_1(config-mlag)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# mlag configuration
Switch_2(config-mlag)# timers mlag 1 5
Switch_2(config-mlag)# peer-link agg 55
Switch_2(config-mlag)# peer-address 10.10.0.1
Switch_2(config-mlag)# end

Шаг 4: Настройка MLAG Interface

В L3 сценариях рекомендуется задавать lacp timeout short для портов коммутаторов и peer-link.

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# no ip igmp snooping
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 10,20
Switch_1(config-vlan)# exit
Switch_1(config)# interface eth-0-1
Switch_1(config-if)# no shutdown
Switch_1(config-if)# lacp timeout short
Switch_1(config-if)# switchport access vlan 10
Switch_1(config-if)# channel-group 1 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface eth-0-2
Switch_1(config-if)# no shutdown
Switch_1(config-if)# lacp timeout short
Switch_1(config-if)# switchport access vlan 20
Switch_1(config-if)# channel-group 2 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface agg 1
Switch_1(config-if)# mlag 1
Switch_1(config-if)# exit
Switch_1(config)# interface agg 2
Switch_1(config-if)# mlag 2
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# no ip igmp snooping
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 10,20
Switch_2(config-vlan)# exit
Switch_2(config)# interface eth-0-1
Switch_2(config-if)# no shutdown
Switch_2(config-if)# lacp timeout short
Switch_2(config-if)# switchport access vlan 10
Switch_2(config-if)# channel-group 1 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface eth-0-2
Switch_2(config-if)# no shutdown
Switch_2(config-if)# lacp timeout short
Switch_2(config-if)# switchport access vlan 20
Switch_2(config-if)# channel-group 2 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface agg 1
Switch_2(config-if)# mlag 1
Switch_2(config-if)# exit
Switch_2(config)# interface agg 2
Switch_2(config-if)# mlag 2
Switch_2(config-if)# end

Шаг 5: Настройка VARP as a Gateway to Host

Примечание

system-id lacp mlag должен быть одинаков на обоих устройствах MLAG, например: 0000.0000.aaaa. Для каскадного соединения пар MLAG system-id должен различаться.

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# interface vlan 10
Switch_1(config-if)# ip address 192.168.1.253/24
Switch_1(config-if)# ip virtual-router address 192.168.1.1
Switch_1(config-if)# exit
Switch_1(config)# interface vlan 20
Switch_1(config-if)# ip address 192.168.2.253/24
Switch_1(config-if)# ip virtual-router address 192.168.2.1
Switch_1(config-if)# exit
Switch_1(config)# ip virtual-router mac 0000.0000.aaaa
Switch_1(config)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface vlan 10
Switch_2(config-if)# ip address 192.168.1.254/24
Switch_2(config-if)# ip virtual-router address 192.168.1.1
Switch_2(config-if)# exit
Switch_2(config)# interface vlan 20
Switch_2(config-if)# ip address 192.168.2.254/24
Switch_2(config-if)# ip virtual-router address 192.168.2.1
Switch_2(config-if)# exit
Switch_2(config)# ip virtual-router mac 0000.0000.aaaa
Switch_2(config)# end

Шаг 6: Проверка конфигурации

Статус MLAG PEER

Switch_1# show mlag peer 
MLAG neighbor is 10.10.0.2, MLAG version 1
MLAG state = Established, up for 00:00:01
Last read 00:00:01, hold time is 240, keepalive interval is 60 seconds
Received 4 messages,Sent 4 messages
Open : received 1, sent 1
KAlive : received 1, sent 1
Fdb sync : received 0, sent 0
Failover : received 0, sent 0
Conf : received 0, sent 0
Syspri : received 1, sent 1
Peer fdb : received 1, sent 1

Connections established 1; dropped 0
Local host: 10.10.0.1, Local port: 50040
Foreign host: 10.10.0.2, Foreign port: 61000
remote_sysid: 1a53.71e9.c000

Статус ролей устройств

Switch_1# show mlag 
MLAG configuration:
-----------------
role : Master
local_sysid : 8e79.b120.2e00
remote_sysid : 1a53.71e9.c000
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Switch_2# show mlag
MLAG configuration:
-----------------
role : Slave
local_sysid : 1a53.71e9.c000
remote_sysid : 8e79.b120.2e00
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Статус интерфейсов MLAG

Switch_1# show mlag interface 
mlagid local-if local-state remote-state
1 agg1 up up
2 agg2 up up

Проверка VARP

Switch_1# show ip arp 
Protocol Address Age (min) Hardware Addr Interface
Internet 10.10.0.1 - 8e79.b120.2e00 vlan4094
Internet 10.10.0.2 0 1a53.71e9.c000 vlan4094
Internet 192.168.1.1 - 0000.0000.0001 vlan10
Internet 192.168.1.253 - 8e79.b120.2e00 vlan10
Internet 192.168.2.1 - 0000.0000.0001 vlan20
Internet 192.168.2.253 - 8e79.b120.2e00 vlan20

17.17.6 MLAG в качестве L3 шлюза (несколько IP на VLAN)

Топология

Рисунок 17-50: MLAG в качестве L3 шлюза (несколько IP на VLAN)

Рисунок 17-50: MLAG в качестве L3 шлюза (несколько IP на VLAN)

Требование

Host 1 и Host 2 используют сдвоенные сетевые карты (NIC) в режиме active-active и подключаются к устройству с MLAG. Устройства находятся в разных подсетях, их шлюз развёрнут на MLAG-коммутаторе. На одном VLAN используется несколько IP-адресов, а коммутатор выполняет роль шлюза для этих сетей.

##№ Шаги настройки

Примечание

В конфигурации используется channel-group 55. Номер можно изменить в соответствии со стандартами платы.

Шаг 1: Настройка MLAG PEER Interconnect Ports

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1 (config)# interface range eth-0-9 – 10
Switch_1 (config-if-range)# no shutdown
Switch_1 (config-if-range)# lacp timeout short
Switch_1 (config-if-range)# channel-group 55 mode active
Switch_1 (config-if-range)# exit
Switch_1 (config)# interface agg 55
Switch_1 (config-if)# spanning-tree port disable
Switch_1 (config-if)# switchport mode trunk
Switch_1 (config-if)# switchport trunk allowed vlan all
Switch_1 (config-if)#end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface range eth-0-9 – 10
Switch_2 (config-if-range)# no shutdown
Switch_2 (config-if-range)# lacp timeout short
Switch_2(config-if-range)# channel-group 55 mode active
Switch_2(config-if-range)# exit
Switch_2(config)# interface agg 55
Switch_2(config-if)# spanning-tree port disable
Switch_2(config-if)# switchport mode trunk
Switch_2(config-if)# switchport trunk allowed vlan all
Switch_2(config-if)#end

Шаг 2: Настройка MLAG PEER Communication Address

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 4094
Switch_1(config-vlan)# exit
Switch_1(config)# interface vlan 4094
Switch_1(config-if)# ip address 10.10.0.1/30
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 4094
Switch_2(config-vlan)# exit
Switch_2(config)# interface vlan 4094
Switch_2(config-if)# ip address 10.10.0.2/30
Switch_2(config-if)# end

Шаг 3: Настройка MLAG PEER

Switch 1

Switch_1# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# mlag configuration
Switch_1(config-mlag)# timers mlag 1 5
Switch_1(config-mlag)# peer-link agg55
Switch_1(config-mlag)# peer-address 10.10.0.2
Switch_1(config-mlag)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# mlag configuration
Switch_2(config-mlag)# timers mlag 1 5
Switch_2(config-mlag)# peer-link agg 55
Switch_2(config-mlag)# peer-address 10.10.0.1
Switch_2(config-mlag)# end

Шаг 4: Настройка MLAG Port

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# no ip igmp snooping
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 10,20
Switch_1(config-vlan)# exit
Switch_1(config)# interface eth-0-1
Switch_1(config-if)# no shutdown
Switch_1(config-if)# lacp timeout short
Switch_1(config-if)# switchport access vlan 10
Switch_1(config-if)# channel-group 1 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface eth-0-2
Switch_1(config-if)# no shutdown
Switch_1(config-if)# lacp timeout short
Switch_1(config-if)# switchport access vlan 20
Switch_1(config-if)# channel-group 2 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface agg 1
Switch_1(config-if)# mlag 1
Switch_1(config-if)# exit
Switch_1(config)# interface agg 2
Switch_1(config-if)# mlag 2
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# no ip igmp snooping
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 10,20
Switch_2(config-vlan)# exit
Switch_2(config)# interface eth-0-1
Switch_2(config-if)# no shutdown
Switch_2(config-if)# lacp timeout short
Switch_2(config-if)# switchport access vlan 10
Switch_2(config-if)# channel-group 1 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface eth-0-2
Switch_2(config-if)# no shutdown
Switch_2(config-if)# lacp timeout short
Switch_2(config-if)# switchport access vlan 20
Switch_2(config-if)# channel-group 2 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface agg 1
Switch_2(config-if)# mlag 1
Switch_2(config-if)# exit
Switch_2(config)# interface agg 2
Switch_2(config-if)# mlag 2
Switch_2(config-if)# end

Шаг 5: Настройка VARP как Gateway to Host

IP-адрес интерфейса VLAN должен отличаться от адресов виртуального маршрутизатора.

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# interface vlan 10
Switch_1(config-if)# ip address 192.168.10.253/24
Switch_1(config-if)# ip virtual-router address 192.168.1.1/24
Switch_1(config-if)# ip virtual-router address 192.168.2.1/24
Switch_1(config-if)# exit
Switch_1(config)# interface vlan 20
Switch_1(config-if)# ip address 192.168.20.253/24
Switch_1(config-if)# ip virtual-router address 192.168.3.1/24
Switch_1(config-if)# ip virtual-router address 192.168.4.1/24
Switch_1(config-if)# exit
Switch_1(config)# ip virtual-router mac 0.0.1
Switch_1(config)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface vlan 10
Switch_2(config-if)# ip address 192.168.10.254/24
Switch_2(config-if)# ip virtual-router address 192.168.1.1/24
Switch_2(config-if)# ip virtual-router address 192.168.2.1/24
Switch_2(config-if)# exit
Switch_2(config)# interface vlan 20
Switch_2(config-if)# ip address 192.168.20.254/24
Switch_2(config-if)# ip virtual-router address 192.168.3.1/24
Switch_2(config-if)# ip virtual-router address 192.168.4.1/24
Switch_2(config-if)# exit
Switch_2(config)# ip virtual-router mac 0.0.1
Switch_2(config)# end

Шаг 6: Проверка конфигурации

Статус MLAG PEER

Switch_1# show mlag peer 
MLAG neighbor is 10.10.0.2, MLAG version 1
MLAG state = Established, up for 00:00:01
Last read 00:00:01, hold time is 240, keepalive interval is 60 seconds
Received 4 messages,Sent 4 messages
Open : received 1, sent 1
KAlive : received 1, sent 1
Fdb sync : received 0, sent 0
Failover : received 0, sent 0
Conf : received 0, sent 0
Syspri : received 1, sent 1
Peer fdb : received 1, sent 1

Connections established 1; dropped 0
Local host: 10.10.0.1, Local port: 50040
Foreign host: 10.10.0.2, Foreign port: 61000
remote_sysid: 1a53.71e9.c000

Статус ролей устройств

Switch_1# show mlag 
MLAG configuration:
-----------------
role : Master
local_sysid : 8e79.b120.2e00
remote_sysid : 1a53.71e9.c000
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Switch_2# show mlag
MLAG configuration:
-----------------
role : Slave
local_sysid : 1a53.71e9.c000
remote_sysid : 8e79.b120.2e00
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Статус MLAG-интерфейсов

Switch_1# show mlag interface 
mlagid local-if local-state remote-state
1 agg1 up up
2 agg2 up up

Проверка VARP

Switch_1# show ip arp 
Protocol Address Age (min) Hardware Addr Interface
Internet 10.10.0.1 - 8e79.b120.2e00 vlan4094
Internet 10.10.0.2 0 1a53.71e9.c000 vlan4094
Internet 192.168.1.1 - 0000.0000.0001 vlan10
Internet 192.168.2.1 - 0000.0000.0001 vlan10
Internet 192.168.10.253 - 8e79.b120.2e00 vlan10
Internet 192.168.3.1 - 0000.0000.0001 vlan20
Internet 192.168.4.1 - 0000.0000.0001 vlan20
Internet 192.168.20.253 - 8e79.b120.2e00 vlan20

17.17.7 MLAG на orphan портах

Топология

Рисунок 17-51: Топология orphan-портов MLAG

Рисунок 17-51: Топология orphan-портов MLAG

Требование

Host 1 и Host 4 используют одиночные сетевые карты и подключаются к устройствам MLAG. Host 2 и Host 3 используют сдвоенные сетевые карты в режиме active-active. Все устройства находятся в разных подсетях, шлюз расположен на MLAG-коммутаторе, требуется отказоустойчивый активный шлюз без использования VRRP.

Шаги настройки

Примечание

В конфигурации используется channel-group 55 — можно использовать другой номер группы.

Шаг 1: Настройка MLAG PEER Interconnect Ports

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1 (config)# interface range eth-0-9 – 10
Switch_1 (config-if-range)# no shutdown
Switch_1 (config-if-range)# lacp timeout short
Switch_1 (config-if-range)# channel-group 55 mode active
Switch_1 (config-if-range)# exit
Switch_1 (config)# interface agg 55
Switch_1 (config-if)# spanning-tree port disable
Switch_1 (config-if)# switchport mode trunk
Switch_1 (config-if)# switchport trunk allowed vlan all
Switch_1 (config-if)#end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface range eth-0-9 – 10
Switch_2 (config-if-range)# no shutdown
Switch_2 (config-if-range)# lacp timeout short
Switch_2(config-if-range)# channel-group 55 mode active
Switch_2(config-if-range)# exit
Switch_2(config)# interface agg 55
Switch_2(config-if)# spanning-tree port disable
Switch_2(config-if)# switchport mode trunk
Switch_2(config-if)# switchport trunk allowed vlan all
Switch_2(config-if)#end

Шаг 2: MLAG PEER Communication Address

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 4094
Switch_1(config-vlan)# exit
Switch_1(config)# interface vlan 4094
Switch_1(config-if)# ip address 10.10.0.1/30
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 4094
Switch_2(config-vlan)# exit
Switch_2(config)# interface vlan 4094
Switch_2(config-if)# ip address 10.10.0.2/30
Switch_2(config-if)# end

Шаг 3: Настройка MLAG PEER

Switch 1

Switch_1# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# mlag configuration
Switch_1(config-mlag)# timers mlag 1 5
Switch_1(config-mlag)# peer-link agg55
Switch_1(config-mlag)# peer-address 10.10.0.2
Switch_1(config-mlag)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# mlag configuration
Switch_2(config-mlag)# timers mlag 1 5
Switch_2(config-mlag)# peer-link agg 55
Switch_2(config-mlag)# peer-address 10.10.0.1
Switch_2(config-mlag)# end

Шаг 4: Настройка MLAG Interface and orphan Port

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# no ip igmp snooping
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 10,20
Switch_1(config-vlan)# exit
Switch_1(config)# interface eth-0-20
Switch_1(config-if)# no shutdown
Switch_1(config-if)# switchport access vlan 10
Switch_2(config-if)# exit
Switch_1(config)# interface eth-0-21
Switch_1(config-if)# no shutdown
Switch_1(config-if)# lacp timeout short
Switch_1(config-if)# switchport access vlan 10
Switch_1(config-if)# channel-group 1 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface eth-0-22
Switch_1(config-if)# no shutdown
Switch_1(config-if)# lacp timeout short
Switch_1(config-if)# switchport access vlan 20
Switch_1(config-if)# channel-group 2 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface agg 1
Switch_1(config-if)# mlag 1
Switch_1(config-if)# exit
Switch_1(config)# interface agg 2
Switch_1(config-if)# mlag 2
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# no ip igmp snooping
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 10,20
Switch_2(config-vlan)# exit
Switch_2(config)# interface eth-0-21
Switch_2(config-if)# no shutdown
Switch_2(config-if)# lacp timeout short
Switch_2(config-if)# switchport access vlan 10
Switch_2(config-if)# channel-group 1 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface eth-0-22
Switch_2(config-if)# no shutdown
Switch_2(config-if)# lacp timeout short
Switch_2(config-if)# switchport access vlan 20
Switch_2(config-if)# channel-group 2 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface agg 1
Switch_2(config-if)# mlag 1
Switch_2(config-if)# exit
Switch_2(config)# interface agg 2
Switch_2(config-if)# mlag 2
Switch_2(config)# interface eth-0-23
Switch_2(config-if)# no shutdown
Switch_2(config-if)# switchport access vlan 20
Switch_2(config-if)# exit
Switch_2(config-if)# end

Шаг 5: Настройка VARP as a Gateway to Host

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# interface vlan 10
Switch_1(config-if)# ip address 192.168.1.253/24
Switch_1(config-if)# ip virtual-router address 192.168.1.1
Switch_1(config-if)# exit
Switch_1(config)# interface vlan 20
Switch_1(config-if)# ip address 192.168.2.253/24
Switch_1(config-if)# ip virtual-router address 192.168.2.1
Switch_1(config-if)# exit
Switch_1(config)# ip virtual-router mac 0.0.1
Switch_1(config)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface vlan 10
Switch_2(config-if)# ip address 192.168.1.254/24
Switch_2(config-if)# ip virtual-router address 192.168.1.1
Switch_2(config-if)# exit
Switch_2(config)# interface vlan 20
Switch_2(config-if)# ip address 192.168.2.254/24
Switch_2(config-if)# ip virtual-router address 192.168.2.1
Switch_2(config-if)# exit
Switch_2(config)# ip virtual-router mac 0.0.1
Switch_2(config)# end

17.17.8 Каскадирование нескольких MLAG доменов

Топология

Рисунок 17-52: Схема каскадирования MLAG-доменов

Рисунок 17-52: Схема каскадирования MLAG-доменов

Требование

При увеличении масштаба сети требуется каскадирование нескольких MLAG-доменов. Необходимо обеспечить соединение между HOST 1/2/3 с размещением шлюза на SWITCH 3/4. Трафик от HOST 1/2 должен передаваться на SWITCH 3/4 через уровень 2.

Шаги настройки

Примечание

используется channel-group 55, но можно применять и другие номера групп.

Шаг 1: Настройка MLAG PEER Interconnect Ports

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1 (config)# interface range eth-0-9 – 10
Switch_1 (config-if-range)# no shutdown
Switch_1 (config-if-range)# lacp timeout short
Switch_1 (config-if-range)# channel-group 55 mode active
Switch_1 (config-if-range)# exit
Switch_1 (config)# interface agg 55
Switch_1 (config-if)# spanning-tree port disable
Switch_1 (config-if)# switchport mode trunk
Switch_1 (config-if)# switchport trunk allowed vlan all
Switch_1 (config-if)#end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# interface range eth-0-9 – 10
Switch_2 (config-if-range)# no shutdown
Switch_2 (config-if-range)# lacp timeout short
Switch_2(config-if-range)# channel-group 55 mode active
Switch_2(config-if-range)# exit
Switch_2(config)# interface agg 55
Switch_2(config-if)# spanning-tree port disable
Switch_2(config-if)# switchport mode trunk
Switch_2(config-if)# switchport trunk allowed vlan all
Switch_2(config-if)#end

Switch 3

Switch_3# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_3 (config)# interface range eth-0-9 – 10
Switch_3 (config-if-range)# no shutdown
Switch_3 (config-if-range)# lacp timeout short
Switch_3(config-if-range)# channel-group 55 mode active
Switch_3 (config-if-range)# exit
Switch_3 (config)# interface agg 55
Switch_3 (config-if)# spanning-tree port disable
Switch_3 (config-if-range)# switchport mode trunk
Switch_3 (config-if-range)# switchport trunk allowed vlan all
Switch_3 (config-if)#exit

Switch 4

Switch_4# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_4(config)# interface range eth-0-9 – 10
Switch_4 (config-if-range)# no shutdown
Switch_4 (config-if-range)# lacp timeout short
Switch_4(config-if-range)# static-channel-group 55
Switch_4(config-if-range)# exit
Switch_4(config)# interface agg 55
Switch_4(config-if)# spanning-tree port disable
Switch_4(config-if-range)# switchport mode trunk
Switch_4(config-if-range)# switchport trunk allowed vlan all
Switch_4(config-if)#exit

Шаг 2: Настройка MLAG PEER Communication Address

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 4094
Switch_1(config-vlan)# exit
Switch_1(config)# interface vlan 4094
Switch_1(config-if)# ip address 10.10.0.1/30
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 4094
Switch_2(config-vlan)# exit
Switch_2(config)# interface vlan 4094
Switch_2(config-if)# ip address 10.10.0.2/30
Switch_2(config-if)# end

Switch 3

Switch_3# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_3(config)# vlan database
Switch_3(config-vlan)# vlan 4094
Switch_3(config-vlan)# exit
Switch_3(config)# interface vlan 4094
Switch_3(config-if)# ip address 10.10.0.5/30
Switch_3(config-if)# end

Switch 4

Switch_4# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_4(config)# vlan database
Switch_4(config-vlan)# vlan 4094
Switch_4(config-vlan)# exit
Switch_4(config)# interface vlan 4094
Switch_4(config-if)# ip address 10.10.0.6/30
Switch_4(config-if)# end

Шаг 3: Настройка MLAG PEER

Switch 1

Switch_1# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# mlag configuration
Switch_1(config-mlag)# timers mlag 1 5
Switch_1(config-mlag)# peer-link agg55
Switch_1(config-mlag)# peer-address 10.10.0.2
Switch_1(config-mlag)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# mlag configuration
Switch_2(config-mlag)# timers mlag 1 5
Switch_2(config-mlag)# peer-link agg 55
Switch_2(config-mlag)# peer-address 10.10.0.1
Switch_2(config-mlag)# end

Switch 3

Switch_3# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch_3(config)# mlag configuration
Switch_3(config-mlag)# timers mlag 1 5
Switch_3(config-mlag)# peer-link agg55
Switch_3(config-mlag)# peer-address 10.10.0.6
Switch_3(config-mlag)# end

Switch 4

Switch_4# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_4(config)# mlag configuration
Switch_4(config-mlag)# timers mlag 1 5
Switch_4(config-mlag)# peer-link agg 55
Switch_4(config-mlag)# peer-address 10.10.0.5
Switch_4(config-mlag)# end

Шаг 4: Настройка Interconnection Port Between 1/2 and 3/4

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config)# no ip igmp snooping
Switch_1(config-vlan)# vlan 10,20
Switch_1(config-vlan)# exit
Switch_1(config)# interface range eth-0-23 – 24
Switch_1(config-if-range)# no shutdown
Switch_1(config-if-range)# lacp timeout short
Switch_1(config-if-range)# switchport mode trunk
Switch_1(config-if-range)# switchport trunk allowed vlan add 10,20
Switch_1(config-if-range)# channel-group 54 mode active
Switch_1(config-if-range)# exit
Switch_1(config)# interface agg 54
Switch_1(config-if)# mlag 54
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# no ip igmp snooping
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 10,20
Switch_2(config-vlan)# exit
Switch_2(config)# interface range eth-0-23 – 24
Switch_2(config-if-range)# no shutdown
Switch_2(config-if-range)# lacp timeout short
Switch_2(config-if-range)# switchport mode trunk
Switch_2(config-if-range)# switchport trunk allowed vlan add 10,20
Switch_2(config-if-range)# channel-group 54 mode active
Switch_2(config-if-range)# exit
Switch_2(config)# interface agg 54
Switch_2(config-if)# mlag 54
Switch_2(config-if)# end

Switch 3

Switch_3# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_3(config)# no ip igmp snooping
Switch_3(config)# vlan database
Switch_3(config-vlan)# vlan 10,20
Switch_3(config-vlan)# exit
Switch_3(config)# interface range eth-0-23 – 24
Switch_3(config-if-range)# no shutdown
Switch_3(config-if-range)# lacp timeout short
Switch_3(config-if-range)# switchport mode trunk
Switch_3(config-if-range)# switchport trunk allowed vlan add 10,20
Switch_3(config-if-range)# channel-group 54 mode active
Switch_3(config-if-range)# exit
Switch_3(config)# interface agg 54
Switch_3(config-if)# mlag 54
Switch_3(config-if)# end

Switch 4

Switch_4# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_4(config)# no ip igmp snooping
Switch_4(config)# vlan database
Switch_4(config-vlan)# vlan 10,20
Switch_4(config-vlan)# exit
Switch_4(config)# interface range eth-0-23 – 24
Switch_4(config-if-range)# no shutdown
Switch_4(config-if-range)# lacp timeout short
Switch_4(config-if-range)# switchport mode trunk
Switch_4(config-if-range)# switchport trunk allowed vlan add 10,20
Switch_4(config-if-range)# channel-group 54 mode active
Switch_4(config-if-range)# exit
Switch_4(config)# interface agg 54
Switch_4(config-if)# mlag 54
Switch_4(config-if)# end

Шаг 5: Настройка MALG Group for HOST Connection

Switch 1

Switch_1# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_1(config)# vlan database
Switch_1(config-vlan)# vlan 10,20
Switch_1(config-vlan)# exit
Switch_1(config)# mlag lacp system-id 0000.0000.aabb
Switch_1(config)# interface eth-0-1
Switch_1(config-if)# no shutdown
Switch_1(config-if)# switchport access vlan 10
Switch_1(config-if)# channel-group 1 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface eth-0-2
Switch_1(config-if)# no shutdown
Switch_1(config-if)# switchport access vlan 20
Switch_1(config-if)# channel-group 2 mode active
Switch_1(config-if)# exit
Switch_1(config)# interface agg 1
Switch_1(config-if)# mlag 1
Switch_1(config-if)# exit
Switch_1(config)# interface agg 2
Switch_1(config-if)# mlag 2
Switch_1(config-if)# end

Switch 2

Switch_2# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_2(config)# vlan database
Switch_2(config-vlan)# vlan 10,20
Switch_2(config-vlan)# exit
Switch_2(config)# mlag lacp system-id 0000.0000.aabb
Switch_2(config)# interface eth-0-1
Switch_2(config-if)# no shutdown
Switch_2(config-if)# switchport access vlan 10
Switch_2(config-if)# channel-group 1 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface eth-0-2
Switch_2(config-if)# no shutdown
Switch_2(config-if)# switchport access vlan 20
Switch_2(config-if)# channel-group 2 mode active
Switch_2(config-if)# exit
Switch_2(config)# interface agg 1
Switch_2(config-if)# mlag 1
Switch_2(config-if)# exit
Switch_2(config)# interface agg 2
Switch_2(config-if)# mlag 2
Switch_2(config-if)# end

Switch 3

Switch_3# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_3(config)# vlan database
Switch_3(config-vlan)# vlan 30
Switch_3(config-vlan)# exit
Switch_3(config)# interface eth-0-1
Switch_3(config-if)# no shutdown
Switch_3(config-if)# lacp timeout short
Switch_3(config-if)# switchport access vlan 30
Switch_3(config-if)# channel-group 1 mode active
Switch_3(config-if)# exit
Switch_3(config)# interface agg 1
Switch_3(config-if)# mlag 1
Switch_3(config-if)# end

Switch 4

Switch_4# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_4(config)# vlan database
Switch_4(config-vlan)# vlan 30
Switch_4(config-vlan)# exit
Switch_4(config)# interface eth-0-1
Switch_4(config-if)# no shutdown
Switch_4(config-if)# lacp timeout short
Switch_4(config-if)# switchport access vlan 30
Switch_4(config-if)# channel-group 1 mode active
Switch_4(config-if)# exit
Switch_4(config)# interface agg 1
Switch_4(config-if)# mlag 1
Switch_4(config-if)# end

Шаг 6: Настройка VARP as a Gateway to Host

Шлюз развернут только на SWITCH 3 и 4.

Switch 3

Switch_3# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_3(config)# interface vlan 10
Switch_3(config-if)# ip address 192.168.1.253/24
Switch_3(config-if)# ip virtual-router address 192.168.1.1
Switch_3(config-if)# exit
Switch_3(config)# interface vlan 20
Switch_3(config-if)# ip address 192.168.2.253/24
Switch_3(config-if)# ip virtual-router address 192.168.2.1
Switch_3(config-if)# exit
Switch_3(config)# interface vlan 30
Switch_3(config-if)# ip address 192.168.3.253/24
Switch_3(config-if)# ip virtual-router address 192.168.3.1
Switch_3(config-if)# exit
Switch_3(config)# ip virtual-router mac 0.0.1
Switch_3(config)# end

Switch 4

Switch_4# configure terminal 
Enter configuration commands, one per line. End with CNTL/Z.
Switch_4(config)# interface vlan 10
Switch_4(config-if)# ip address 192.168.1.254/24
Switch_4(config-if)# ip virtual-router address 192.168.1.1
Switch_4(config-if)# exit
Switch_4(config)# interface vlan 20
Switch_4(config-if)# ip address 192.168.2.254/24
Switch_4(config-if)# ip virtual-router address 192.168.2.1
Switch_4(config-if)# exit
Switch_4(config)# interface vlan 30
Switch_4(config-if)# ip address 192.168.3.254/24
Switch_4(config-if)# ip virtual-router address 192.168.3.1
Switch_4(config-if)# exit
Switch_4(config)# ip virtual-router mac 0.0.1
Switch_4(config)# end

Шаг 7. Проверка результата настройки

Проверка MLAG-соседа

Switch_1# show mlag peer 
MLAG neighbor is 10.10.0.2, MLAG version 1
MLAG state = Established, up for 00:00:01
Last read 00:00:01, hold time is 240, keepalive interval is 60 seconds
Received 4 messages,Sent 4 messages
Open : received 1, sent 1
KAlive : received 1, sent 1
Fdb sync : received 0, sent 0
Failover : received 0, sent 0
Conf : received 0, sent 0
Syspri : received 1, sent 1
Peer fdb : received 1, sent 1

Connections established 1; dropped 0
Local host: 10.10.0.1, Local port: 50040
Foreign host: 10.10.0.2, Foreign port: 61000
remote_sysid: 1a53.71e9.c000

Проверка состояния MLAG

Switch_1# show mlag 
MLAG configuration:
-----------------
role : Master
local_sysid : 8e79.b120.2e00
remote_sysid : 1a53.71e9.c000
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Switch_2# show mlag
MLAG configuration:
-----------------
role : Slave
local_sysid : 1a53.71e9.c000
remote_sysid : 8e79.b120.2e00
mlag_sysid : 8e79.b120.2e00
local_syspri : 32768
remote_syspri: 32768
mlag_syspri : 32768
peer-link : agg55
peer conf : Yes
reload-delay : 300

Проверка состояния интерфейсов MLAG

Switch_1# show mlag interface 
mlagid local-if local-state remote-state
1 agg1 up up
2 agg2 up up
54 agg54 up up

Проверка ARP и VARP

Switch_3# show ip arp 
Protocol Address Age (min) Hardware Addr Interface
Internet 10.10.0.5 - 50bd.ac96.f800 vlan4094
Internet 10.10.0.6 0 fef0.6b89.5800 vlan4094
Internet 192.168.1.1 - 0000.0000.0001 vlan10
Internet 192.168.1.253 - 50bd.ac96.f800 vlan10
Internet 192.168.2.1 - 0000.0000.0001 vlan20
Internet 192.168.2.253 - 50bd.ac96.f800 vlan20
Internet 192.168.3.1 - 0000.0000.0001 vlan30
Internet 192.168.3.253 - 50bd.ac96.f800 vlan30

После настройки хостов рекомендуется использовать ping для проверки прохождения трафика через шлюз и между хостами.